package org.jeecg.modules.pipe.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;

/**
 * @Description: 泵站
 * @Author: jeecg-boot
 * @Date:   2024-05-14
 * @Version: V1.0
 */
@Data
@TableName("iot_pipe_pump_station")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="iot_pipe_pump_station对象", description="泵站")
public class PumpStation implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "主键")
    private java.lang.Long id;
	/**名称*/
	@Excel(name = "名称", width = 15)
    @ApiModelProperty(value = "名称")
    private java.lang.String name;
	/**水厂ID*/
	@Excel(name = "水厂ID", width = 15)
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "水厂ID")
    private java.lang.Long plantId;
	/**行政区*/
	@Excel(name = "行政区", width = 15)
    @ApiModelProperty(value = "行政区")
    private java.lang.String region;
	/**街道*/
	@Excel(name = "街道", width = 15)
    @ApiModelProperty(value = "街道")
    private java.lang.String street;
	/**地址*/
	@Excel(name = "地址", width = 15)
    @ApiModelProperty(value = "地址")
    private java.lang.String detailedAddress;
	/**所在河涌名称*/
	@Excel(name = "所在河涌名称", width = 15, dicCode = "river_surges")
	@Dict(dicCode = "river_surges")
    @ApiModelProperty(value = "所在河涌名称")
    private java.lang.String riverSurges;
	/**权属单位*/
	@Excel(name = "权属单位", width = 15)
    @ApiModelProperty(value = "权属单位")
    private java.lang.String ownershipOrg;
	/**管理单位*/
	@Excel(name = "管理单位", width = 15)
    @ApiModelProperty(value = "管理单位")
    private java.lang.String managementOrg;
	/**设备组合*/
    @Excel(name = "设备组合", width = 15, dicCode = "equipment_combine")
    @Dict(dicCode = "equipment_combine")
    @ApiModelProperty(value = "设备组合")
    private java.lang.String equipmentCombine;
	/**水泵台数*/
	@Excel(name = "水泵台数", width = 15)
    @ApiModelProperty(value = "水泵台数")
    private java.lang.Integer waterPumpNum;
	/**控制水位*/
	@Excel(name = "控制水位", width = 15)
    @ApiModelProperty(value = "控制水位")
    private java.lang.String controlWaterLevel;
	/**起排水位*/
	@Excel(name = "起排水位", width = 15)
    @ApiModelProperty(value = "起排水位")
    private java.lang.String beginDrainWaterLevel;
	/**实际抽排量*/
	@Excel(name = "实际抽排量", width = 15)
    @ApiModelProperty(value = "实际抽排量")
    private java.lang.String actualPumpingCapacity;
	/**设计抽排能力*/
	@Excel(name = "设计抽排能力", width = 15)
    @ApiModelProperty(value = "设计抽排能力")
    private java.lang.String designPumpingCapacity;
	/**占地面积*/
	@Excel(name = "占地面积", width = 15)
    @ApiModelProperty(value = "占地面积")
    private java.lang.String floorSpace;
	/**警戒水位线*/
	@Excel(name = "警戒水位线", width = 15)
    @ApiModelProperty(value = "警戒水位线")
    private java.lang.String warningWaterLine;
	/**服务面积*/
	@Excel(name = "服务面积", width = 15)
    @ApiModelProperty(value = "服务面积")
    private java.lang.String serviceArea;
	/**汇水面积*/
	@Excel(name = "汇水面积", width = 15)
    @ApiModelProperty(value = "汇水面积")
    private java.lang.String catchmentArea;
	/**设计雨水排水能力*/
	@Excel(name = "设计雨水排水能力", width = 15)
    @ApiModelProperty(value = "设计雨水排水能力")
    private java.lang.String designRainwaterCapacity;
	/**设计污水拍摄能力*/
	@Excel(name = "设计污水拍摄能力", width = 15)
    @ApiModelProperty(value = "设计污水拍摄能力")
    private java.lang.String sewageShootAbility;
	/**投入运行日期*/
	@Excel(name = "投入运行日期", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    @ApiModelProperty(value = "投入运行日期")
    private java.util.Date runDate;
	/**经度*/
	@Excel(name = "经度", width = 15)
    @ApiModelProperty(value = "经度")
    private java.lang.String longitude;
	/**纬度*/
	@Excel(name = "纬度", width = 15)
    @ApiModelProperty(value = "纬度")
    private java.lang.String latitude;
	/**类型图标*/
	@Excel(name = "类型图标", width = 15)
    @ApiModelProperty(value = "类型图标")
    private java.lang.String pic;
	/**备注*/
	@Excel(name = "备注", width = 15)
    @ApiModelProperty(value = "备注")
    private java.lang.String mark;
	/**是否删除*/
	@Excel(name = "是否删除", width = 15)
    @ApiModelProperty(value = "是否删除")
    @TableLogic
    private java.lang.Integer delFlag;
    //状态
    private java.lang.Integer status;
	/**创建时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private java.util.Date createTime;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private java.lang.String createBy;
	/**修改时间*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "修改时间")
    private java.util.Date updateTime;
	/**修改人*/
    @ApiModelProperty(value = "修改人")
    private java.lang.String updateBy;
	/**租户*/
	@Excel(name = "租户", width = 15)
    @ApiModelProperty(value = "租户")
    private java.lang.String tenantId;
}
